package com.geek.water.service;

import java.util.Map;

/**
 * 通知服务接口
 */
public interface NotificationService {

    /**
     * 发送邮件通知
     */
    boolean sendEmail(String to, String subject, String content);

    /**
     * 发送短信通知
     */
    boolean sendSms(String phone, String content);

    /**
     * 发送推送通知
     */
    boolean sendPush(String userId, String title, String content);

    /**
     * 发送催缴通知
     */
    boolean sendCollectionNotification(String billId, String channels);

    /**
     * 批量发送通知
     */
    int batchSendNotifications(Map<String, Object> request);

    /**
     * 测试通知发送
     */
    boolean testNotification(Map<String, Object> request);

    /**
     * 获取通知配置
     */
    Map<String, Object> getNotificationConfig();

    /**
     * 更新通知配置
     */
    boolean updateNotificationConfig(Map<String, Object> config);
}
